home *** CD-ROM | disk | FTP | other *** search
/ Wonky Flux Batch 2019 02 / Wonky_Flux_Batch_2019-02.zip / Wonky Flux Batch 2019-02 / 002 - AE ProDOS Time Utilities - Timemaster II H.O Version 3.5 Apple Pascal.dsk / STARTUP.TEXT.txt < prev    next >
Text File  |  2019-02-16  |  2KB  |  95 lines

  1. PROGRAM SETDATE;
  2. (* BY STEVEN MALECHEK 21-JUN-1985 *)
  3. (*   MODIFIED 20-JUL-1986 FOR PASCAL 1.3 *)
  4. (* Copyright (c) 1985,1986 by Applied Engineering *)
  5.  
  6. USES TIMEMASTERII;
  7.  
  8. TYPE
  9.  
  10.   DATE          = PACKED RECORD
  11.                            MONTH : 1..12;
  12.                            DAY   : 1..31;
  13.                            YEAR  : 0..99;
  14.                          END;
  15.                          
  16. VAR
  17.  
  18.   BLOCK         : ARRAY[0..255] OF DATE;
  19.   
  20.  
  21. PROCEDURE POKE(ADDRESS:INTEGER;VALUE:DATE);
  22. (* TO STORE THE NEW DATE INSIDE THE MACHINE *)
  23.     
  24.   VAR
  25.     MEMREF : RECORD CASE INTEGER OF
  26.                1: (ADDR:INTEGER);
  27.                2: (PTR:^DATE);
  28.              END;
  29.              
  30.  BEGIN
  31.    MEMREF.ADDR:=ADDRESS;
  32.    MEMREF.PTR^:=VALUE;
  33.  END;
  34.  
  35. FUNCTION PEEK(ADDRESS:INTEGER):INTEGER;
  36. (* TO READ SYSTEM VERSION NUMBER *)
  37.  
  38.   TYPE BYTE=0..255;
  39.   
  40.   VAR
  41.     MEMREF : RECORD CASE INTEGER OF
  42.                1: (ADDR:INTEGER);
  43.                2: (PTR:^BYTE);
  44.              END;
  45.              
  46. BEGIN
  47.   MEMREF.ADDR:=ADDRESS;
  48.   PEEK:=MEMREF.PTR^ DIV 256;
  49. END;
  50.  
  51.  
  52. BEGIN
  53.   
  54.   UNITREAD(4,BLOCK,512,2);  (* RESET THE DATE ON BOOT DISK *)
  55.   
  56.   WITH BLOCK[10] DO
  57.   
  58.     BEGIN
  59.       
  60.       MONTH := CLMONTH;
  61.       DAY   := CLDATE;
  62.       YEAR  := CLYEAR;
  63.       
  64.     END;
  65.     
  66.   UNITWRITE(4,BLOCK,512,2);
  67.  
  68.   
  69.   (* ADDRESS OF DATE INTERNALLY *)
  70.   
  71.   (* POKE(-21992,BLOCK[10]);    FOR PASCAL 1.1 *)
  72.   POKE(-18342,BLOCK[10]);    (* FOR PASCAL 1.2 AND 1.3 128K *)
  73.   (* POKE(-21250,BLOCK[10]);    FOR PASCAL 1.3 64K *)
  74.   (* POKE(-21252,BLOCK[10]);    FOR PASCAL 1.2 64K *)
  75.   
  76.   PAGE(OUTPUT);
  77.   GOTOXY(5,5);
  78.   WRITE(TODAY);
  79.   GOTOXY(25,5);
  80.   WRITELN(TIME);
  81.   GOTOXY(8,10);
  82.   WRITELN('WELCOME TO APPLE PASCAL ');
  83.   GOTOXY(15,12);
  84.   WRITELN('FEATURING');
  85.   GOTOXY(8,14);
  86.   WRITELN('THE TIMEMASTER II CLOCK');
  87.   GOTOXY(19,16);
  88.   WRITELN('BY');
  89.   GOTOXY(10,18);
  90.   WRITELN('APPLIED ENGINEERING');
  91.   
  92. END.
  93.  
  94.  
  95.